/********************************************************************
	created:	2009:12:7   21:54:38
	filename: 	application.h
	author:		zouyf
	describe:	
*********************************************************************/
#pragma once
#include "../uitls.h"
#include "songmanager.h"
#include "playlistmanager.h"
#include "appsetting.h"
#include "settingspersist.h"
#include "playcontroler.h"

class FApplication : public IApplication
{
public:
	void Init(HWND hwnd);

	virtual ISongManager* GetSongManager();
	virtual IPlayListManager* GetPlayListManager();
	virtual IAppSetting* GetAppSetting();
	virtual ISettingsPersist* GetSettingsPersist();
	virtual IPlayControler* GetPlayControler();
	virtual HWND GetMainWndHandle();

	void Term();

private:
	FSongManger m_SongManager;
	FPlayListManager m_PlayListManager;
	FAppSetting m_AppSetting;
	FSettingsPersist m_SettingPersist;
	FPlayControler m_PlayControler;
	HWND m_MainWndhWnd;
};
